package io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
/**
 * 从文件中读取文本数据
 */


public class ReadStringDemo {
    public static void main(String[] args) throws IOException {
         /*
            1:创建一个文件输入流
            2:从文件中将字节都读取回来
            3:将读取到的字节转换回字符串
         */
        FileInputStream fis=new FileInputStream("./fos.txt");
        byte[]data=new byte[1024];
        int len=fis.read(data);
        System.out.println("一共有多少个字符："+len);

         /*
            String提供了构造方法可以将一个字节数组还原为字符串
            String(byte[] data,Charset charset)
            将给定的字节数组data中所有字节按照给定的字符集转换为字符串。

            String(byte[] data,int offset,int len,Charset charset)
            将给定的字节数组data从下标offset处开始的连续len个字节按照指定的字符集转换为字符串
         */
        String line=new String(data,0,len, StandardCharsets.UTF_8);
        System.out.println(line.length());
        System.out.println(line);
        fis.close();
    }
}
